Today Ethernet is the dominant computer networking technology for local area networks (LANs). As Ethernet gains wide popularity among enterprise, carriers, and cloud service providers, Ethernet architecture has transitioned LAN segments from being implemented as passive shared mediums only to being implemented as actively switched networks. In an actively switched network for Ethernet, resilient loop free frame forwarding is essential for efficient data communication, and shortest path bridging (SPB) protocol is the latest evolutionary step in Ethernet networking that has been standardized. On Mar. 29, 2012, the Institute of Electrical and Electronic Engineers Review Committee (IEEE RevCom) approved 802.1aq standards for SPB protocols.
SPB introduces link state routing to Ethernet to replace the distance vector algorithm underlying the Rapid Spanning Tree Protocol (RSTP, standardized as IEEE 802.1D), and uses multiple sets of edge rooted shortest path trees in lieu of a single or small number of spanning trees. A node in a SPB network maintains sets of shortest path trees so that the node knows how to forward frames to other nodes in the network. By definition, an Ethernet node does not forward a frame back to the port of arrival in frame forwarding (sometimes referred to as “reverse poisoning”) to avoid forwarding loops. Yet forwarding loop may still happen in an SPB network with reverse poisoning enabled. For example, forwarding loop may occur upon distance inversion. The simplest form of a distance inversion is when two nodes each believe the other is closer to a destination node thus frame destined to the destination node will be forwarded back and forth between the two nodes. Poisoned reverse means such a loop cannot happen in Ethernet, but loops caused by lack of synchronization of multiple switches creating distance inversion scenarios can demonstrably occur.
Forwarding loop causes chronic drain on network bandwidth. Worse, for multicast frame forwarding, forwarding loop can be catastrophic, especially if a loop feeds back into another loop, resulting in an exponential increase in the bandwidth consumed in the network, and causing nearly instantaneous network “meltdown.” For this and other reasons, loop prevention is critical for a SPB network.
Shortest path bridging as specified is augmented with a reverse path forwarding check (RPFC, which is referred to as ingress checking in IEEE 802.1aq). Ingress checking (also referred to as ingress check or source address lookup) checks the source MAC address of a given Ethernet frame with the expected port of arrival for that address. If there is a discrepancy the frame is discarded. This adds robustness to loop mitigation but is not authoritative hence is augmented with a control plane handshake to specifically prevent loops when multiple switches are not synchronized. What the addition of the strictness of RPFC does is restrict resiliency options as nodes cannot “blindly” exploit alternate forwarding paths to a given destination, because with RPFC, only one path from a source is permitted by any given node in any given backbone virtual LAN identifier (B-VID). What would be desirable would be to have more relaxed forms of loop mitigation for 802.1aq such that in failure scenarios fast local switching to loop free alternate paths could be exploited.